home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / a_utils / debugger / amiga / powervsr.lzh / PVDevelop / PVDevelop.lzh / include / PV / DebugBase.h < prev    next >
Encoding:
C/C++ Source or Header  |  1992-02-06  |  2.4 KB  |  142 lines

  1. #ifndef PV_DEBUGBASE_H
  2. #define PV_DEBUGBASE_H TRUE
  3. /*
  4. **  $Filename: DebugBase.h $
  5. **  $Release: 1.13 $
  6. **  $Revision: 37.809 $
  7. **  $Date: 6 Feb 92 $
  8. **
  9. **  Structure definitions for Debug Base (see 'TheWizardCorner')
  10. **
  11. **  ⌐ 1991 Jorrit Tyberghein, included with PowerVisor
  12. **        All Rights Reserved
  13. */
  14.  
  15. #ifndef PV_PVMEMORY_H
  16. #include <pv/PVMemory.h>
  17. #endif
  18.  
  19. #ifndef EXEC_LISTS_H
  20. #include <exec/lists.h>
  21. #endif
  22.  
  23. #ifndef DOS_DOS_H
  24. #include <dos/dos.h>
  25. #endif
  26.  
  27.  
  28. #define TRACE_NONE    0
  29. #define TRACE_TRACE    1
  30. #define TRACE_EXEC    2
  31.  
  32. #define TRACES_NORMAL    0
  33. #define TRACES_TTRACE    1
  34. #define TRACES_CRASH    2
  35. #define TRACES_BREAK    3
  36. #define TRACES_TBREAK    4
  37. #define TRACES_WAIT    5
  38. #define TRACES_ERROR    6
  39.  
  40. #define TRACET_NORMAL    0
  41. #define TRACET_AFTER    1
  42. #define TRACET_STEP    2
  43. #define TRACET_UNTIL    3
  44. #define TRACET_REG    4
  45. #define TRACET_COND    5
  46. #define TRACET_BRANCH    6
  47. #define TRACET_FORCE    7
  48. #define TRACET_OSCALL    8
  49. #define TRACET_SKIP    9
  50.  
  51.  
  52. struct BreakpointNode
  53.     {
  54.         struct Node node;
  55.         UWORD Number;
  56.         APTR Address;
  57.         UWORD OrigContents;
  58.         UBYTE Type;
  59.         UBYTE pad0;
  60.         ULONG UsageCount;
  61.         ULONG AdditionalArg;
  62.         APTR BreakRout;
  63.         ULONG pad1;
  64.     };
  65.  
  66. struct DebugNode
  67.     {
  68.         struct Node node;
  69.         ULONG MatchWord;    /* 'DBUG' */
  70.         UBYTE Mode;
  71.         UBYTE SMode;
  72.         BPTR LoadedSegment;
  73.         APTR ProgramCounter;
  74.         APTR TempRout;
  75.         APTR TraceExceptRout;
  76.         APTR RestoreBreakpoint;
  77.         ULONG AdditionalInfo;
  78.         UBYTE TMode;
  79.         UBYTE pad0;
  80.         UBYTE TDNestCnt;
  81.         UBYTE IDNestCnt;
  82.         UBYTE TaskState;
  83.         UBYTE Dirty;
  84.         ULONG SigWait;
  85.         ULONG CrashNum;
  86.         ULONG AdditionalArg;
  87.         struct Task *DebugTask;
  88.         ULONG TopPC;
  89.         ULONG BottomPC;
  90.         UWORD LastDumpLine;
  91.         UBYTE InstructionBytes[32];
  92.         APTR InitPC;
  93.         APTR OldTrapCode;
  94.         struct PVQuickBlock Symbols;
  95.         struct PVQuickBlock Strings;
  96.         struct List Breakpoints;
  97.         UWORD pad1;
  98.         ULONG pad2;
  99.         UWORD pad3;
  100.         UBYTE pad4;
  101.         UBYTE pad5;
  102.         APTR QuitCode;
  103.         APTR OrigQuitCode;
  104.         ULONG SP;
  105.         ULONG PC;
  106.         UWORD SR;
  107.         ULONG Registers[15];
  108.         UBYTE pad6[16];
  109.         struct SourceFile *Source;
  110.         struct SourceFile *CurrentSource;
  111.     };
  112.  
  113. struct SourceFile
  114.     {
  115.         struct SourceFile *Next;
  116.         struct SourceFile *Prev;
  117.         APTR FileName;
  118.         ULONG LinesSize;
  119.         APTR Lines;
  120.         ULONG FileSize;
  121.         APTR File;
  122.         ULONG LineNumber;
  123.         ULONG TopLine;
  124.         ULONG BottomLine;
  125.         ULONG HiLine;
  126.     };
  127.  
  128. struct DebugBase
  129.     {
  130.         ULONG FloatingPoint;
  131.         struct List DebugTasks;
  132.         struct DebugNode *CurrentDebug;
  133.         UBYTE pad0[16];
  134.         UBYTE pad1[8];
  135.         UBYTE ShowRegInfo;
  136.         UBYTE GiveDisassembly;
  137.         UWORD NumLinesToDisassemble;
  138.         UWORD PreviousInstruction;
  139.     };
  140.  
  141. #endif
  142.